package com.bai.localshop.service;

import com.bai.localshop.pojo.dto.OrderSubmitDTO;
import com.bai.localshop.pojo.dto.OrdersPaymentDTO;
import com.bai.localshop.pojo.vo.OrderSubmitVO;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.bai.localshop.pojo.dto.OrderCreateDTO;
import com.bai.localshop.pojo.dto.OrderQueryDTO;
import com.bai.localshop.pojo.vo.OrderVO;

/**
 * 订单服务接口
 */
public interface OrderService {
    
    /**
     * 分页查询订单
     */
    Page<OrderVO> pageQuery(OrderQueryDTO query);
    
    /**
     * 根据ID查询订单
     */
    OrderVO getById(Long id);
    
    /**
     * 更新订单状态
     */
    void updateStatus(Long id, Integer status);
    
    /**
     * 取消订单
     */
    void cancel(Long id);

    /**
     * 用户下单
     * @param requestParam
     * @return
     */
    OrderSubmitVO submit(OrderSubmitDTO requestParam);

    /**
     * 订单支付
     * @param requestParam
     * @return
     */
    void payment(OrdersPaymentDTO requestParam);
}


